<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <script src="./libs/https.js"></script>
    <!-- 导入日期插件文件 -->
    <script src="./libs/jedate/js/jedate.js"></script>
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">
    <!-- 引入富文本插件 -->
    <script src=".//libs/wangEditor/wangEditor.min.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章发表
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" placeholder="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4">
                        <select class="form-control category" name="categoryId">
                            <option>类别一</option>
                            <option>类别二</option>
                            <option>类别三</option>
                            <option selected>类别四</option>
                            <option>类别五</option>
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="col-sm-4">
                        <!-- 准备日期插件容器 -->
                        <div class="jeinpbox">
                            <input type="text" class="jeinput" id="testico" placeholder="YYYY-MM-DD" name="date">
                            <div class="icons jebtns"></div>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-10" id="editor">
                        <p></p>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-release">发布</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
</body>
<script>
    $(function() {
        // 1. 设置封面图片预览
        $('#inputCover').on('change', function() {
            let picUrl = URL.createObjectURL(this.files[0]);
            $('.article_cover').attr('src', picUrl);
        })

        // 2. 获得文章分类,渲染结构
        $.ajax({
                type: 'get',
                url: BigNew.category_list,
                success: function(backData) {
                    if (backData.code == 200) {
                        // 3. 利用模板字符串生成结构
                        let htmlStr = '';
                        $.each(backData.data, function(index, value) {
                            htmlStr += `<option value="${value.id}">${value.name}</option>`
                        })
                        $('.category').html(htmlStr);
                    }
                }
            })
            // 调用日期插件
        $('.jebtns').on('click', function() {
                jeDate(
                    '#testico', {
                        trigger: false,
                        format: 'YYYY-MM-DD',
                        theme: {
                            bgcolor: '#fea3dc',
                            pnColor: "#FF6653"
                        },
                        zIndex: 20000
                    }
                )
            })
            // 5. 调用富文本插件js代码
            // 声明关键字: var let const: 声明常量
        const E = window.wangEditor
        const editor = new E('#editor')
        editor.create()

        // 封装函数：发起Ajax请求，添加文章数据
        function saveData(state) {
            // 接口需要六个参数（详见接口文档），前面四个自动获取，后面两个手动添加
            // 注意：formData 获取数据的前提是有同样的name属性
            let fd = new FormData(document.querySelector('form'))
            fd.append('state', state)
            fd.append('content', editor.txt.html())
            $.post({
                url: BigNew.article_publish,
                data: fd,
                contentType: false,
                processData: false,
                success: function(backData) {
                    console.log(backData);
                    if (backData.code == 200) {
                        alert(backData.msg)
                            // 跳转到文章列表页面
                        location = './article_list.html'
                    }
                }
            })
        }
        // 发布按钮
        $('.btn-release').on('click', function(e) {
            e.preventDefault();
            saveData('已发布');
        })

        // 草稿按钮
        $('.btn-draft').on('click', function(e) {
            e.preventDefault();
            saveData('草稿');
        })
    })
</script>

</html>